Spring Bean到底是什么?有什么用? 您所在的位置:网站首页 bears 是什么意思 Spring Bean到底是什么?有什么用?

Spring Bean到底是什么?有什么用?

2023-12-09 05:00| 来源: 网络整理| 查看: 265

Spring Bean是什么?有什么用? 一、Bean到底是什么?二.怎么使用bean?三.Bean配置四.Bean的作用域

Bean在Spring和SpringMVC中随处可见,将这个概念内化很重要,下面分享一下我的想法:

一、Bean到底是什么?

我个人的理解,觉得bean就相当于定义一个组件,这个组件是用于具体实现某个功能的。这里的所定义的bean就相当于给了你一个简洁方便的方法来调用这个组件实现你要完成的功能。

1、Java面向对象,对象有方法和属性,那么就需要对象实例来调用方法和属性(即实例化); 2、凡是有方法或属性的类都需要实例化,这样才能具象化去使用这些方法和属性; 3、规律:凡是子类及带有方法或属性的类都要加上注册Bean到Spring IoC的注解;(@Component , @Repository , @ Controller , @Service , @Configration) 4、把Bean理解为类的代理或代言人(实际上确实是通过反射、代理来实现的),这样它就能代表类拥有该拥有的东西了 5、我们都在微博上@过某某,对方会优先看到这条信息,并给你反馈,那么在Spring中,你标识一个@符号,那么Spring就会来看看,并且从这里拿到一个Bean(注册)或者给出一个Bean(使用)

二.怎么使用bean?

**对于我们的spring最主要的应该就是由这些bean组成的bean工厂,每个bean实现一个功能 例如:你写的第一个bean

id相当于定义了你的这个bean的别名,如果你需要他的话只要关联这个别名就可以了,也就相当于下面的一样,在你的userAction中需要实现userBO这个功能,我关联它,那么在action中set注入就可以使用了! 至于其他的属性看下面: Id : 标识该bean的名称,通过factory.getBean(“id”)来获得实例。 Class : 该bean的类路径。 Singleton : 默认为true,即单实例模式,每次getBean(“id”)时获取的都是同 一个实例,如果设置为false,即原型模式,则每次获取的是新创建 的实例。**

三.Bean配置

ID,name 或class 一般情况下,转配一个Bean时,通过指定一个ID属性作为Bean的名称 1.id属性在IOC容器中必须是唯一的 2.如果Bean的名称中含有特殊字符,就需要使用name属性 3.class用于设置一个类的完全路径名称,主要作用是ioc容器生成类的实例

四.Bean的作用域

https://mp.csdn.net 上代码操作:

1. 新建配置文件 》resources》applicationContext.xml 2. 新建class文件 Spring package com.coure.ioc.demo; import org.junit.Test; import org.springframework.context.ApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext; public class Spring { @Test public void demo(){ ApplicationContext applicationContext = new ClassPathXmlApplicationContext("applicationContext.xml"); Person persion1 = (Person)applicationContext.getBean("person"); Person persion2 = (Person)applicationContext.getBean("person"); System.out.println(persion1); System.out.println(persion2); } } 3.新建class文件 person package com.coure.ioc.demo; public class Person { } 执行run方法 demo com.coure.ioc.demo.Person@20140db9 com.coure.ioc.demo.Person@20140db9 com.coure.ioc.demo.Person@20140db9 com.coure.ioc.demo.Person@1e6a3214

从上面的例子也印证了我上面的总结的内容: 1、凡是子类及带属性、方法的类都注册Bean到Spring中,交给它管理; 2、@Bean 用在方法上,告诉Spring容器,你可以从下面这个方法中拿到一个Bean



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有